package com.ark.cloud.dataservices.modules.sys.service;

import com.ark.cloud.dataservices.modules.sys.entity.po.Seat;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Set;

public interface ISeatService extends IService<Seat> {
    /**
     * 根据用户名获取席位名集合
     *
     * @param username 用户名
     * @return 席位名集合
     */
    Set<String> getSeatNamesByUsername(String username);

    /**
     * 添加席位
     *
     * @param seat {@link Seat}
     * @return 是否添加成功
     */
    boolean add(Seat seat);

    /**
     * 删除席位
     *
     * @param id 席位 id
     * @return 是否删除成功
     */
    boolean delete(String id);

    /**
     * 根据 id 获取席位
     *
     * @param id 席位 id
     * @return {@link Seat}
     */
    Seat get(String id);

    /**
     * 更新席位
     *
     * @param seat {@link Seat}
     * @return 是否更新成功
     */
    boolean update(Seat seat);

    /**
     * 根据席位 License 获取对应的 IP
     *
     * @param license 席位 License
     * @return IP
     */
    String getIpAddrByLicense(String license);
}
